;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; FILE:      loader.lisp
;; AUTHOR:    glen hunt
;; DESC:      custom loader for blocksworld (cse471/598 ex4)
;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;

;; avoid infinite loops when printing circular structure references
(setf *print-circle* t)

;; if it hasn't been compiled yet, compile everything
(cond ((and (null (probe-file "./icarus.lib"))
	    (null (probe-file "./icarus.fasl")))
       (loop for f in (directory "./*.lisp") do
	    (compile-file f)))
      (t (format t "Icarus already compiled. Moving on...")))

;; load icarus
(load "icarus")

;; DGS 6/5/2011 for projection with deductive closure
(load "one-step-lookahead")

;; load the blocksworld
(load "./blocks/loader")
